#include<iostream>
using namespace std;
#include <set>

// set容器 大小和交换

void printSet(const set<int>& s)
{
    for (set<int>::iterator it = s.begin();it != s.end();it++)
    {
        cout << *it << " ";
    }
    cout << endl;
}

// 大小
void test1()
{
    set<int>s1;

    // 插入数据
    s1.insert(10);
    s1.insert(30);
    s1.insert(90);
    s1.insert(50);

    // 打印容器
    printSet(s1);

    // 判断容器是否为空
    if (s1.empty())
    {
        cout << "s1为空" << endl;
    }
    else
    {
        cout << "s1不为空" << endl;
        cout << "s1的大小为：" << s1.size() << endl;
    }
}

// 交换
void test2()
{
    set<int>s1;

    // 插入数据
    s1.insert(10);
    s1.insert(30);
    s1.insert(90);
    s1.insert(50);

    set<int>s2;

    // 插入数据
    s2.insert(100);
    s2.insert(300);
    s2.insert(900);
    s2.insert(500);

    cout << "交换前：" << endl;
    printSet(s1);
    printSet(s2);

    s1.swap(s2);
    cout << "交换后：" << endl;
    printSet(s1);
    printSet(s2);
}

int main()
{
    test1();
    cout << "------------------" << endl;
    test2();
    
    return 0;
}